package dominio;
// Generated 5/11/2014 06:32:33 PM by Hibernate Tools 3.2.1.GA


import java.util.HashSet;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.UniqueConstraint;

/**
 * Especialidad generated by hbm2java
 */
@Entity
@Table(name="especialidad"
    ,catalog="siscote"
    , uniqueConstraints = @UniqueConstraint(columnNames="Codigo") 
)
public class Especialidad  implements java.io.Serializable {


     private Integer idEspecialidad;
     private String codigo;
     private String nombre;
     private String descripcion;
     private Set<Documento> documentos = new HashSet(0);

    public Especialidad() {
    }

	
    public Especialidad(String codigo, String nombre, String descripcion) {
        this.codigo = codigo;
        this.nombre = nombre;
        this.descripcion = descripcion;
    }
    public Especialidad(String codigo, String nombre, String descripcion, Set<Documento> documentos) {
       this.codigo = codigo;
       this.nombre = nombre;
       this.descripcion = descripcion;
       this.documentos = documentos;
    }
   
     @Id @GeneratedValue(strategy=IDENTITY)
    
    @Column(name="idEspecialidad", unique=true, nullable=false)
    public Integer getIdEspecialidad() {
        return this.idEspecialidad;
    }
    
    public void setIdEspecialidad(Integer idEspecialidad) {
        this.idEspecialidad = idEspecialidad;
    }
    
    @Column(name="Codigo", unique=true, nullable=false, length=45)
    public String getCodigo() {
        return this.codigo;
    }
    
    public void setCodigo(String codigo) {
        this.codigo = codigo;
    }
    
    @Column(name="Nombre", nullable=false, length=45)
    public String getNombre() {
        return this.nombre;
    }
    
    public void setNombre(String nombre) {
        this.nombre = nombre;
    }
    
    @Column(name="Descripcion", nullable=false, length=45)
    public String getDescripcion() {
        return this.descripcion;
    }
    
    public void setDescripcion(String descripcion) {
        this.descripcion = descripcion;
    }
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="especialidad")
    public Set<Documento> getDocumentos() {
        return this.documentos;
    }
    
    public void setDocumentos(Set<Documento> documentos) {
        this.documentos = documentos;
    }




}


